package com.example.demo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.example.demo.entity.Post;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.example.demo.vo.PostVO;

public interface PostService extends IService<Post> {

    /**
     * 获取帖子列表
     * @param pageNum 页码
     * @param pageSize 每页大小
     * @return 帖子列表
     */
    IPage<PostVO> getPostList(Integer pageNum, Integer pageSize,String type);

    /**
     * 获取帖子详情
     * @param id 帖子ID
     * @return 帖子详情
     */
    PostVO getPostDetail(Long id);

    /**
     * 创建帖子
     * @param post 帖子信息
     */
    void createPost(Post post);

    /**
     * 更新帖子
     * @param post 帖子信息
     */
    void updatePost(Post post);

    /**
     * 删除帖子
     * @param id 帖子ID
     */
    void deletePost(Long id);

    /**
     * 增加浏览数
     * @param id 帖子ID
     */
    void incrementViewCount(Long id);
} 